home *** CD-ROM | disk | FTP | other *** search
/ Fritz: All Fritz / All Fritz.zip / All Fritz / FILES / PROGMISC / FORTRAN1.LZH / FRMSTD.FOR < prev    next >
Text File  |  1988-02-08  |  2KB  |  87 lines

  1.       SUBROUTINE FRMSTD ( VALIN, STRIN, VALOUT, STROUT, IERR )
  2. C*
  3. C*                  *******************************
  4. C*                  *******************************
  5. C*                  **                           **
  6. C*                  **          FRMSTD           **
  7. C*                  **                           **
  8. C*                  *******************************
  9. C*                  *******************************
  10. C*
  11. C*     SUBPROGRAM :
  12. C*          FROM STANDARD UNITS
  13. C*
  14. C*     AUTHOR :
  15. C*          ART RAGOSTA
  16. C*          MS 207-5
  17. C*          AMES RESEARCH CENTER
  18. C*          MOFFETT FIELD, CA  94035
  19. C*          (415) 694-5578
  20. C*
  21. C*     PURPOSE :
  22. C*          TO CONVERT A VALUE FROM STANDARD UNITS TO NON-STANDARD UNITS
  23. C*
  24. C*     INPUT ARGUMENTS :
  25. C*          VALIN  - THE INPUT VALUE
  26. C*          STRIN  - THE UNITS OF 'VALIN'
  27. C*          STROUT - THE REQUESTED UNITS OF 'VALOUT'
  28. C*
  29. C*     OUTPUT ARGUMENTS :
  30. C*          VALOUT - THE VALUE AFTER CONVERTING
  31. C*          IERR   -=0 FOR NO ERROR
  32. C*                  =1-3 FOR ERROR IN TOSTD
  33. C*                  =4 FOR INVALID UNITS REQUESTED (IE, OUTPUT UNITS DO
  34. C*                      NOT FOLLOW FROM INPUT UNITS)
  35. C*
  36. C*     INTERNAL WORK AREAS :
  37. C*          STEMP - USED TO CALCULATE THE RESULTANT STD UNITS
  38. C*
  39. C*     COMMON BLOCKS :
  40. C*          NONE
  41. C*
  42. C*     FILE REFERENCES :
  43. C*          NONE
  44. C*
  45. C*     SUBPROGRAM REFERENCES :
  46. C*          TOSTD, CMPAR
  47. C*
  48. C*     ERROR PROCESSING :
  49. C*          NONE
  50. C*
  51. C*     TRANSPORTABILITY LIMITATIONS :
  52. C*          NONE
  53. C*
  54. C*     ASSUMPTIONS AND RESTRICTIONS :
  55. C*          NONE
  56. C*
  57. C*     LANGUAGE AND COMPILER :
  58. C*          ANSI FORTRAN 77
  59. C*
  60. C*     VERSION AND DATE :
  61. C*          VERSION I.0     24-SEP-85
  62. C*
  63. C*     CHANGE HISTORY :
  64. C*          24-SEP-85    INITIAL VERSION
  65. C*
  66. C***********************************************************************
  67. C*
  68.       CHARACTER *(*) STRIN, STROUT
  69.       CHARACTER *255 STEMP
  70. C
  71. C --- USE TOSTD TO CALCULATE THE CONVERSION FACTOR FOR STROUT
  72. C
  73.       VTEMP = 1.0
  74.       CALL TOSTD ( VTEMP, STROUT, VTEMP, STEMP, IERR )
  75.       IF ( IERR .NE. 0 ) RETURN
  76. C
  77. C --- VTEMP HAS THE FACTOR FOR THE NON-STD UNITS...
  78. C ---  DIVIDE AND MAKE SURE THE UNITS ARE THE SAME
  79. C
  80.       CALL CMPAR ( STRIN, STEMP, IERR )
  81.       IF (IERR .EQ. 0) VALOUT = VALIN / VTEMP
  82.       RETURN
  83.       END
  84. C
  85. C---END FRMSTD
  86. C
  87.